๊ตญ์ ํ(i18n)๋ฅผ ์ํ CSS ์นด์ดํฐ ์คํ์ผ์ ์ดํด๋ณด๊ณ ๊ธ๋ก๋ฒ ์ฌ์ฉ์๋ฅผ ์ํด ๋ค์ํ ์ธ์ด ๋ฐ ๋ฌธํ์ ๋งฅ๋ฝ์์ ์ซ์์ ๋ชฉ๋ก์ ์์ ์ง์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ด ๋๋ค.
CSS ์นด์ดํฐ ์คํ์ผ ์ธ์ด ์ง์: ๊ธ๋ก๋ฒ ์ฌ์ฉ์๋ฅผ ์ํ ๊ตญ์ ํ ์์
์ค๋๋ ์ ๊ธ๋ก๋ฒ ์ฐ๊ฒฐ๋ ์ธ๊ณ์์ ์น ๊ฐ๋ฐ์๋ ๋ค์ํ ์ฌ์ฉ์๋ฅผ ๋์์ผ๋ก ํ๋ ์น์ฌ์ดํธ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค์ด์ผ ํฉ๋๋ค. ์ด๋ ์ธ์ด๋ฟ๋ง ์๋๋ผ ๋ค์ํ ์ง์ญ์์ ์ฌ์ฉ๋๋ ๋ฌธํ์ ๊ด์ต๊ณผ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ ์ ๊ณ ๋ คํด์ผ ํจ์ ์๋ฏธํฉ๋๋ค. CSS ์นด์ดํฐ ์คํ์ผ์ ์ด๋ฌํ ๋ฌธํ์ ๋์์ค๋ฅผ ์กด์คํ๋ ๋ฐฉ์์ผ๋ก ๋ชฉ๋ก ๋ฐ ๊ธฐํ ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ์ฝํ ์ธ ์ ์์์ ์ง์ ํ๋ ๊ฐ๋ ฅํ ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค. ์ด ํฌ๊ด์ ์ธ ๊ฐ์ด๋๋ ๊ตญ์ ํ(i18n)๋ฅผ ์ํ CSS ์นด์ดํฐ ์คํ์ผ์ ๊ธฐ๋ฅ์ ์ดํด๋ณด๊ณ ์ด๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค.
CSS ์นด์ดํฐ ์คํ์ผ ์ดํด
CSS ์นด์ดํฐ๋ ์ฌ์ฉ ํ์๋ฅผ ์ถ์ ํ๊ธฐ ์ํด CSS ๊ท์น์ ์ํด ์ ์ง ๊ด๋ฆฌ๋๋ ๋ณ์์ ๋๋ค. ์ฃผ๋ก ๋ชฉ๋ก, ์ ๋ชฉ ๋ฐ ๊ธฐํ ์์์ ๋ฒํธ๋ฅผ ๋งค๊ธฐ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. CSS ์นด์ดํฐ ์คํ์ผ์ ํ์ค ์๋ผ๋น์ ์ซ์ ๋ฐ ๋ก๋ง ์ซ์ ์ธ์ ์ฌ์ฉ์ ์ง์ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ ์ ์ ์ํ ์ ์๋๋ก ํ์ฌ ์ด ๊ธฐ๋ฅ์ ํ์ฅํฉ๋๋ค. ์ด๋ ๋ค์ํ ์ธ์ด์ ๋ฌธํ์ ์ ํธ๋๋ฅผ ์ง์ํ๋ ๋ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค.
์นด์ดํฐ ์คํ์ผ์ ์ฌ์ฉํ๋ ๋ฐ ๊ด๋ จ๋ ํต์ฌ CSS ์์ฑ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- counter-reset: ์นด์ดํฐ๋ฅผ ํน์ ๊ฐ์ผ๋ก ์ด๊ธฐํํ๊ฑฐ๋ ์ฌ์ค์ ํฉ๋๋ค.
- counter-increment: ์นด์ดํฐ ๊ฐ์ ์ฆ๊ฐ์ํต๋๋ค.
- content: ์นด์ดํฐ ๊ฐ์ ํ์ํ๊ธฐ ์ํด
::before๋๋::after๊ฐ์ ์์์ ํจ๊ป ์ฌ์ฉ๋ฉ๋๋ค. - counter() ๋๋ counters(): ์นด์ดํฐ ๊ฐ์ ์์ ์ง์ ํ๊ธฐ ์ํด
content์์ฑ ๋ด์์ ์ฌ์ฉ๋๋ ํจ์์ ๋๋ค. - @counter-style: ์์์ ์ ์ดํ๊ธฐ ์ํ ๋ค์ํ ์์ฑ์ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ง์ ์นด์ดํฐ ์คํ์ผ์ ์ ์ํฉ๋๋ค.
@counter-style์ ํ
@counter-style ๊ท์น์ CSS ์นด์ดํฐ ์คํ์ผ ๊ตญ์ ํ์ ํต์ฌ์
๋๋ค. ์นด์ดํฐ ๊ฐ์ด ๋ ๋๋ง๋๋ ๋ฐฉ์์ ์ ์ดํ๋ ๋ค์ํ ์์ฑ์ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ง์ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ
์ ์ ์ํ ์ ์์ต๋๋ค. @counter-style ๊ท์น ๋ด์ ์ฃผ์ ์์ฑ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
- system: ์นด์ดํฐ ํํ์ ์์ฑํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์๊ณ ๋ฆฌ์ฆ์ ์ง์ ํฉ๋๋ค. ์ผ๋ฐ์ ์ธ ๊ฐ์ผ๋ก๋
cyclic,numeric,alphabetic,symbolic,fixed๋ฐadditive๊ฐ ์์ต๋๋ค. - symbols: ์ซ์, ๋ฌธ์ ๋๋ ์ฌ์ฉ์ ์ง์ ๋ฌธ์์ ๊ฐ์ ์นด์ดํฐ ์คํ์ผ์์ ์ฌ์ฉ๋๋ ๊ธฐํธ๋ฅผ ์ ์ํฉ๋๋ค.
- additive-symbols:
additive์์คํ ๊ณผ ํจ๊ป ์ฌ์ฉํ์ฌ ๊ธฐํธ์ ํด๋น ์ซ์ ๊ฐ์ ์ ์ํฉ๋๋ค. - suffix: ๊ฐ ์นด์ดํฐ ํํ ๋ค์ ์ถ๊ฐ๋๋ ํ ์คํธ๋ฅผ ์ง์ ํฉ๋๋ค(์: ๋ง์นจํ ๋๋ ๋ซ๋ ๊ดํธ).
- prefix: ๊ฐ ์นด์ดํฐ ํํ ์์ ์ถ๊ฐ๋๋ ํ ์คํธ๋ฅผ ์ง์ ํฉ๋๋ค.
- range: ์นด์ดํฐ ์คํ์ผ์ด ์ ์ฉ ๊ฐ๋ฅํ ๊ฐ์ ๋ฒ์๋ฅผ ์ ํํฉ๋๋ค.
- pad: ํ์ํ ๊ฒฝ์ฐ ์ ํ 0์ผ๋ก ์ฑ์ ์ฌ์ฉํ ์ต์ ์๋ฆฟ์๋ฅผ ์ง์ ํฉ๋๋ค.
- speak-as: ์ ๊ทผ์ฑ์ ์ํด ํ๋ฉด ํ๋ ๊ธฐ๊ฐ ์นด์ดํฐ ๊ฐ์ ์๋ฆฌ๋ ๋ฐฉ์์ ์ ์ดํฉ๋๋ค.
- fallback: ๋ธ๋ผ์ฐ์ ์์ ํ์ฌ ์คํ์ผ์ ์ง์ํ์ง ์๋ ๊ฒฝ์ฐ ์ฌ์ฉํ ๋์ฒด ์นด์ดํฐ ์คํ์ผ์ ์ง์ ํฉ๋๋ค.
@counter-style์ ์ฌ์ฉํ ๊ตญ์ ํ ์์
์ด์ @counter-style์ ์ฌ์ฉํ์ฌ ๋ค์ํ ์ธ์ด ๋ฐ ๋ฌธํ์ ๋งฅ๋ฝ์ ๋ง๊ฒ ์นด์ดํฐ ์์์ ์ง์ ํ๋ ์ค์ ์์ ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
1. ์๋ผ๋น์-์ธ๋ ์ซ์์ ํจ๊ปํ๋ ์๋ผ๋น์ ์ซ์
์๋ผ๋น์ ์ซ์(0-9)๊ฐ ๋๋ฆฌ ์ฌ์ฉ๋์ง๋ง ๋ง์ ์๋์ด ์ฌ์ฉ ์ง์ญ์์๋ ์๋ผ๋น์-์ธ๋ ์ซ์(ู โ-ูฉโ)๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์ ํธํฉ๋๋ค. ์ด๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด ์นด์ดํฐ ์คํ์ผ์ ๋ง๋ค ์ ์์ต๋๋ค.
@counter-style arabic-indic {
system: numeric;
symbols: 'ู ' 'ูก' 'ูข' 'ูฃ' 'ูค' 'ูฅ' 'ูฆ' 'ูง' 'ูจ' 'ูฉ';
suffix: '. ';
}
ol {
list-style: none;
counter-reset: item;
}
ol li {
counter-increment: item;
}
ol li::before {
content: counter(item, arabic-indic);
}
์ด ์ฝ๋๋ ์๋ผ๋น์-์ธ๋ ์ซ์๋ฅผ ๊ธฐํธ๋ก ์ฌ์ฉํ๋ arabic-indic๋ผ๋ ์นด์ดํฐ ์คํ์ผ์ ์ ์ํฉ๋๋ค. suffix ์์ฑ์ ๊ฐ ์ซ์ ๋ค์ ๋ง์นจํ์ ๊ณต๋ฐฑ์ ์ถ๊ฐํฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ CSS๋ ์ด ์คํ์ผ์ ์ ๋ ฌ๋ ๋ชฉ๋ก(<ol>)์ ์ ์ฉํ์ฌ ์ซ์๋ฅผ ์๋ผ๋น์-์ธ๋ ํ์์ผ๋ก ํ์ํฉ๋๋ค.
2. ๋ก๋ง ์ซ์(๋๋ฌธ์ ๋ฐ ์๋ฌธ์)
๋ก๋ง ์ซ์๋ ๋ค์ํ ๋งฅ๋ฝ์์ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ฉฐ CSS ์นด์ดํฐ ์คํ์ผ์ ์ด๋ฅผ ์ฝ๊ฒ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
@counter-style upper-roman {
system: upper-roman;
}
@counter-style lower-roman {
system: lower-roman;
}
ol.upper-roman {
list-style: none;
counter-reset: item;
}
ol.upper-roman li {
counter-increment: item;
}
ol.upper-roman li::before {
content: counter(item, upper-roman) '. ';
}
ol.lower-roman {
list-style: none;
counter-reset: item;
}
ol.lower-roman li {
counter-increment: item;
}
ol.lower-roman li::before {
content: counter(item, lower-roman) '. ';
}
์ด ์์ ์์๋ ๋๋ฌธ์(upper-roman) ๋ฐ ์๋ฌธ์(lower-roman) ๋ก๋ง ์ซ์ ์นด์ดํฐ ์คํ์ผ์ ๋ชจ๋ ๋ง๋๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค. ๊ทธ๋ฐ ๋ค์ CSS ํด๋์ค(.upper-roman ๋ฐ .lower-roman)๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ์คํ์ผ์ ๋ค๋ฅธ ๋ชฉ๋ก์ ์ ์ฉํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
<ol class="upper-roman">
<li>ํญ๋ชฉ 1</li>
<li>ํญ๋ชฉ 2</li>
<li>ํญ๋ชฉ 3</li>
</ol>
<ol class="lower-roman">
<li>ํญ๋ชฉ 1</li>
<li>ํญ๋ชฉ 2</li>
<li>ํญ๋ชฉ 3</li>
</ol>
3. ๊ทธ๋ฃจ์ง์ผ ์ซ์
๊ทธ๋ฃจ์ง์ผ ์ซ์๋ ๊ณ ์ ํ ๋ฌธ์ ์์คํ ์ ์ฌ์ฉํฉ๋๋ค. ๊ทธ๋ฃจ์ง์ผ์ด๋ก ์ซ์๋ฅผ ๋ํ๋ด๋ ์นด์ดํฐ ์คํ์ผ์ ์ ์ํ ์ ์์ต๋๋ค.
@counter-style georgian {
system: fixed;
symbols: 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ' 'แ ' 'แก' 'แข' 'แฃ' 'แค' 'แฅ' 'แฆ' 'แง' 'แจ' 'แฉ' 'แช' 'แซ' 'แฌ' 'แญ' 'แฎ' 'แฏ' 'แฐ';
suffix: '. ';
range: 1 33;
}
ol.georgian {
list-style: none;
counter-reset: item;
}
ol.georgian li {
counter-increment: item;
}
ol.georgian li::before {
content: counter(item, georgian);
}
์ด ์์ ์์๋ ๊ทธ๋ฃจ์ง์ผ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ
์ด ์ฒ์ 33๊ฐ์ ์ซ์์ ๋ํ ์ ํ๋ ๊ธฐํธ ์ธํธ๋ฅผ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ fixed ์์คํ
์ ์ฌ์ฉํฉ๋๋ค. range ์์ฑ์ ์นด์ดํฐ ์คํ์ผ์ 1์์ 33 ์ฌ์ด์ ๊ฐ์ผ๋ก ์ ํํฉ๋๋ค. 33๋ณด๋ค ํฐ ์ซ์์ ๊ฒฝ์ฐ ๋ ๋ณต์กํ ๋
ผ๋ฆฌ ๋๋ ๋ค๋ฅธ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ
์ ๊ตฌํํด์ผ ํฉ๋๋ค.
4. ์๋ฅด๋ฉ๋์ ์ซ์
๊ทธ๋ฃจ์ง์ผ์ ๋ง์ฐฌ๊ฐ์ง๋ก ์๋ฅด๋ฉ๋์ ์ซ์๋ ๋ฌธ์๋ฅผ ์ฌ์ฉํ์ฌ ์ซ์๋ฅผ ๋ํ๋ ๋๋ค.
@counter-style armenian {
system: fixed;
symbols: 'ิฑ' 'ิฒ' 'ิณ' 'ิด' 'ิต' 'ิถ' 'ิท' 'ิธ' 'ิน' 'ิบ' 'ิป' 'ิผ' 'ิฝ' 'ิพ' 'ิฟ' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี
' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี' 'ี';
suffix: '. ';
range: 1 39;
}
ol.armenian {
list-style: none;
counter-reset: item;
}
ol.armenian li {
counter-increment: item;
}
ol.armenian li::before {
content: counter(item, armenian);
}
์ด ์์ ๋ ๊ทธ๋ฃจ์ง์ผ ์์ ์ ์ ์ฌํ๋ฉฐ fixed ์์คํ
์ ์ฌ์ฉํ๊ณ ์๋ฅด๋ฉ๋์ ๋ฌธ์๋ฅผ ๊ธฐํธ๋ก ์ ์ํฉ๋๋ค. range๋ ๊ธฐ๋ณธ ์๋ฅด๋ฉ๋์ ์ซ์ ์ธํธ๋ฅผ ํฌํจํ์ฌ 1-39๋ก ์ค์ ๋ฉ๋๋ค.
5. CJK ์ซ์(์ค๊ตญ์ด, ์ผ๋ณธ์ด, ํ๊ตญ์ด)
CJK ์ซ์๋ ๊ณต์ ๋ฐ ๋น๊ณต์ ์ปจํ ์คํธ์ ๋ํ ๋ค์ํ ํํ์ ๋ค์ํ ์์ค์ ์ธ๋ถ์ฑ์ผ๋ก ์ธํด ๋ ๋ณต์กํฉ๋๋ค. ์ค๊ตญ์ด ๊ฐ์ฒด๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
@counter-style simplified-chinese {
system: numeric;
symbols: 'ไธ' 'ไบ' 'ไธ' 'ๅ' 'ไบ' 'ๅ
ญ' 'ไธ' 'ๅ
ซ' 'ไน';
suffix: '';
}
@counter-style simplified-chinese-formal {
system: fixed;
symbols: '้ถ' 'ๅฃน' '่ดฐ' 'ๅ' '่' 'ไผ' '้' 'ๆ' 'ๆ' '็';
suffix: '';
}
ol.simplified-chinese {
list-style: none;
counter-reset: item;
}
ol.simplified-chinese li {
counter-increment: item;
}
ol.simplified-chinese li::before {
content: counter(item, simplified-chinese) 'ใ';
}
ol.simplified-chinese-formal {
list-style: none;
counter-reset: item;
}
ol.simplified-chinese-formal li {
counter-increment: item;
}
ol.simplified-chinese-formal li::before {
content: counter(item, simplified-chinese-formal) 'ใ';
}
์ด๊ฒ์ ๋จ์ํ๋ ํํ์
๋๋ค. ํนํ ํฐ ์ซ์์ ๋ํ ์์ ํ CJK ์ซ์ ์ง์์ additive ์์คํ
๊ณผ ์๋ฆฌ์(์ญ, ๋ฐฑ, ์ฒ ๋ฑ) ์ฒ๋ฆฌ๋ฅผ ํฌํจํ๋ ๋ณด๋ค ๋ณต์กํ ๊ตฌํ์ด ํ์ํฉ๋๋ค. ์ด ์ฝ๋๋ ๊ธฐ๋ณธ ์ซ์ ํํ์ ๋ณด์ฌ์ค๋๋ค.
๊ณ ๊ธ ๊ธฐ์ ๋ฐ ๊ณ ๋ ค ์ฌํญ
1. ์นด์ดํฐ ์คํ์ผ ๊ฒฐํฉ
์ฌ๋ฌ ์นด์ดํฐ ์คํ์ผ์ ๊ฒฐํฉํ์ฌ ๋ ๋ณต์กํ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์ฒด๊ณ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๊ฐ ์ฅ์ ์ฅ์ ๋ํ ๊ธฐ๋ณธ ์นด์ดํฐ์ ์น์ ์ ๋ํ ๋ณด์กฐ ์นด์ดํฐ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
body {
counter-reset: chapter section;
}
h1 {
counter-increment: chapter;
counter-reset: section;
}
h2 {
counter-increment: section;
}
h1::before {
content: counter(chapter) '. ';
}
h2::before {
content: counter(chapter) '.' counter(section) '. ';
}
์ด ์ฝ๋๋ ์ฅ์ ์์ฐจ์ ์ผ๋ก ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง๊ณ ์น์ ์ ๊ฐ ์ฅ ๋ด์ ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง๋ ๊ณ์ธต์ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ ์ ๋ง๋ญ๋๋ค(์: 1.1, 1.2, 2.1, 2.2).
2. ์ ๊ทผ์ฑ ๊ณ ๋ ค ์ฌํญ
์นด์ดํฐ ์คํ์ผ์ด ์ฅ์ ๊ฐ ์๋ ์ฌ์ฉ์๊ฐ ์ก์ธ์คํ ์ ์๋์ง ํ์ธํฉ๋๋ค. speak-as ์์ฑ์ ์ฌ์ฉํ์ฌ ํ๋ฉด ํ๋
๊ธฐ๊ฐ ์นด์ดํฐ ๊ฐ์ ์๋ฆฌ๋ ๋ฐฉ์์ ์ ์ดํฉ๋๋ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
@counter-style my-style {
system: numeric;
symbols: '1' '2' '3';
speak-as: numbers;
}
speak-as: numbers; ์์ฑ์ ํ๋ฉด ํ๋
๊ธฐ์๊ฒ ์นด์ดํฐ ๊ฐ์ ์ซ์๋ก ์๋ฆฌ๋๋ก ์ง์ํฉ๋๋ค. ๋ค๋ฅธ ์ต์
์ผ๋ก๋ spell-out(์ซ์๋ฅผ ์ฒ ์ํ๋ ๊ฒฝ์ฐ) ๋ฐ bullets(์นด์ดํฐ๋ฅผ ๊ธ๋จธ๋ฆฌ ๊ธฐํธ๋ก ์๋ฆฌ๋ ๊ฒฝ์ฐ)๊ฐ ์์ต๋๋ค.
๋ํ ์๊ฐ ์ฅ์ ๊ฐ ์๋ ์ฌ์ฉ์๊ฐ ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ์ฝํ ์ธ ์ ์๋ฏธ๋ฅผ ์ดํดํ ์ ์๋๋ก ์นด์ดํฐ ์คํ์ผ์ ์ฌ์ฉ๋ ์ฌ์ฉ์ ์ง์ ๊ธฐํธ์ ๋ํ ๋์ฒด ํ ์คํธ ๋๋ ์ค๋ช ์ ์ ๊ณตํฉ๋๋ค.
3. ๋ธ๋ผ์ฐ์ ํธํ์ฑ
CSS ์นด์ดํฐ ์คํ์ผ์ ์ต์ ๋ธ๋ผ์ฐ์ ์์ ๋๋ฆฌ ์ง์๋์ง๋ง ์ด์ ๋ธ๋ผ์ฐ์ ๋ฒ์ ์ ๊ณ ๋ คํ๋ ๊ฒ์ด ํ์์ ์
๋๋ค. ๋ธ๋ผ์ฐ์ ๊ฐ ๊ธฐ๋ณธ ์คํ์ผ์ ์ง์ํ์ง ์๋ ๊ฒฝ์ฐ ์ฌ์ฉํ ๋์ฒด ์นด์ดํฐ ์คํ์ผ์ ์ง์ ํ๋ ค๋ฉด fallback ์์ฑ์ ์ฌ์ฉํ์ญ์์ค. ์๋ฅผ ๋ค๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
@counter-style my-style {
system: cyclic;
symbols: 'โ' 'โ';
fallback: disc;
}
์ด ์์ ์์ ๋ธ๋ผ์ฐ์ ๊ฐ cyclic ์์คํ
๋๋ ์ฌ์ฉ์ ์ง์ ๊ธฐํธ๋ฅผ ์ง์ํ์ง ์์ผ๋ฉด disc ๋ชฉ๋ก ์คํ์ผ๋ก ๋์ฒด๋ฉ๋๋ค.
4. ๋ฌธํ์ ๊ฐ์์ฑ
๋ค์ํ ์ธ์ด ๋ฐ ๋ฌธํ์ ๋ํ ์นด์ดํฐ ์คํ์ผ์ ๊ตฌํํ ๋๋ ๋ฌธํ์ ๊ฐ์์ฑ์ ์ผ๋์ ๋์ญ์์ค. ๊ฐ ์ง์ญ์์ ์ฌ์ฉ๋๋ ์ ์ ํ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ๊ท์น ๋ฐ ๊ธฐํธ๋ฅผ ์กฐ์ฌํฉ๋๋ค. ๋ชจ์์ ์ด๊ฑฐ๋ ๋ถ์ ์ ํ ์ ์๋ ๊ธฐํธ๋ ํ์์ ์ฌ์ฉํ์ง ๋ง์ญ์์ค.
์๋ฅผ ๋ค์ด ์ผ๋ถ ๋ฌธํ๊ถ์์๋ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ ์์ ๋ค๋ฅธ ๊ตฌ๋์ ๊ธฐํธ ๋๋ ๊ตฌ๋ถ ๊ธฐํธ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์ ํธํ ์ ์์ต๋๋ค. ์นด์ดํฐ ์คํ์ผ์ด ์ด๋ฌํ ์ ํธ๋๋ฅผ ์กด์คํ๋์ง ํ์ธํ์ญ์์ค.
์ค์ฉ์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ์ฌ์ฉ ์ฌ๋ก
CSS ์นด์ดํฐ ์คํ์ผ์ ๋ค์๊ณผ ๊ฐ์ ๋ค์ํ ์น ๊ฐ๋ฐ ์๋๋ฆฌ์ค์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ๋ชฉ์ฐจ ์์ฑ: ๋ชฉ์ฐจ์์ ์ ๋ชฉ๊ณผ ๋ถ์ ๋ชฉ์ ์๋์ผ๋ก ๋ฒํธ๋ฅผ ๋งค๊น๋๋ค.
- ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ๋ชฉ๋ก ๋ง๋ค๊ธฐ: ๋ค์ํ ์ธ์ด์ ์คํ์ผ๋ก ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ๋ชฉ๋ก์ ์์์ ์ง์ ํฉ๋๋ค.
- ํํ ๋ฆฌ์ผ์์ ๋จ๊ณ ๋ฒํธ ๋งค๊ธฐ๊ธฐ: ๋ช ํํ๊ณ ์๊ฐ์ ์ผ๋ก ๋งค๋ ฅ์ ์ธ ๋ฒํธ ๋งค๊ธฐ๊ธฐ๋ก ์ผ๋ จ์ ๋จ๊ณ๋ฅผ ์๋ดํฉ๋๋ค.
- ์ฌ์ฉ์ ์ง์ ํ์ด์ง ๋งค๊น ๊ตฌํ: ๊ณ ์ ํ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์ฒด๊ณ๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ง์ ํ์ด์ง ๋งค๊น ์ปจํธ๋กค์ ๋ง๋ญ๋๋ค.
- ์์๊ฐ ๋งค๊ฒจ์ง ๋ชฉ๋ก ํ์: ๋ค์ํ ์นด์ดํฐ ์คํ์ผ์ ์ฌ์ฉํ์ฌ ์๊ฐ์ ์ผ๋ก ๋งค๋ ฅ์ ์ธ ๋ฐฉ์์ผ๋ก ์์๋ฅผ ํ์ํฉ๋๋ค.
- ๋ฒ๋ฅ ๋ฌธ์ ์์ฑ: ํน์ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์๊ตฌ ์ฌํญ์ด ์๋ ๋ฒ๋ฅ ๋ฌธ์์ ์์์ ์ง์ ํฉ๋๋ค.
- ๊ณผํ ๋ ผ๋ฌธ ์์ ์ง์ : ์ ์ ํ ๋ฒํธ ๋งค๊ธฐ๊ธฐ๋ก ๋ฐฉ์ ์, ๊ทธ๋ฆผ ๋ฐ ํ๋ฅผ ํ์ํฉ๋๋ค.
CSS ์นด์ดํฐ ์คํ์ผ ์ฌ์ฉ์ ๋ํ ๋ชจ๋ฒ ์ฌ๋ก
CSS ์นด์ดํฐ ์คํ์ผ์ด ํจ๊ณผ์ ์ด๊ณ ์ ์ง ๊ด๋ฆฌ ๊ฐ๋ฅํ๋๋ก ํ๋ ค๋ฉด ๋ค์ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๋ฅด์ญ์์ค.
- ์นด์ดํฐ ์คํ์ผ์ ๋ํ ์ค๋ช
์ ์ธ ์ด๋ฆ ์ฌ์ฉ: ์คํ์ผ์ ๋ชฉ์ ๊ณผ ์์์ ๋ช
ํํ๊ฒ ๋ํ๋ด๋ ์ด๋ฆ์ ์ ํํฉ๋๋ค(์:
arabic-indic,upper-roman,georgian). - ์นด์ดํฐ ์คํ์ผ์ ๋ชจ๋์์ผ๋ก ์ ์ง: ๋ค์ํ ์ธ์ด ๋ฐ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ ์ ๋ํด ๋ณ๋์ ์นด์ดํฐ ์คํ์ผ์ ์ ์ํฉ๋๋ค.
- CSS ํด๋์ค๋ฅผ ์ฌ์ฉํ์ฌ ์นด์ดํฐ ์คํ์ผ ์ ์ฉ: ์นด์ดํฐ ์คํ์ผ์ ์์์ ์ง์ ์ ์ฉํ์ง ๋ง๊ณ CSS ํด๋์ค๋ฅผ ์ฌ์ฉํ์ฌ ์์์ ์ ์ดํฉ๋๋ค.
- ์นด์ดํฐ ์คํ์ผ์ ์ฒ ์ ํ ํ ์คํธ: ๋ค์ํ ๋ธ๋ผ์ฐ์ ์ ์ฅ์น์์ ์นด์ดํฐ ์คํ์ผ์ ํ ์คํธํ์ฌ ์ฌ๋ฐ๋ฅด๊ฒ ๋ ๋๋ง๋๋์ง ํ์ธํฉ๋๋ค.
- ์นด์ดํฐ ์คํ์ผ ๋ฌธ์ํ: ๋ชฉ์ , ์์ ๋ฐ ์ฌ์ฉ๋ฒ์ ํฌํจํ์ฌ ์นด์ดํฐ ์คํ์ผ์ ๋ํ ๋ช ํํ ๋ฌธ์๋ฅผ ์ ๊ณตํฉ๋๋ค.
- ์ ๊ทผ์ฑ ์ฐ์ ์: ์นด์ดํฐ ์คํ์ผ์ ๋ง๋ค ๋ ํญ์ ์ ๊ทผ์ฑ์ ๊ณ ๋ คํ๊ณ
speak-as์์ฑ์ ์ฌ์ฉํ์ฌ ํ๋ฉด ํ๋ ๊ธฐ๊ฐ ์นด์ดํฐ ๊ฐ์ ์ฌ๋ฐ๋ฅด๊ฒ ์๋ฆฌ๋๋ก ํฉ๋๋ค.
๊ฒฐ๋ก
CSS ์นด์ดํฐ ์คํ์ผ์ ์น์์ ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ์ฝํ
์ธ ์ ์์์ ๊ตญ์ ํํ๋ ๊ฐ๋ ฅํ๊ณ ์ ์ฐํ ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค. @counter-style ๊ท์น๊ณผ ๋ค์ํ ์์ฑ์ ํ์ฉํ์ฌ ๋ค์ํ ์ง์ญ์ ๋ฌธํ์ ๊ท์น๊ณผ ์ธ์ด์ ๋์์ค๋ฅผ ์กด์คํ๋ ์ฌ์ฉ์ ์ง์ ๋ฒํธ ๋งค๊ธฐ๊ธฐ ์์คํ
์ ๋ง๋ค ์ ์์ต๋๋ค. ์ด ๊ฐ์ด๋์ ์ค๋ช
๋ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๋ฅด๋ฉด ์นด์ดํฐ ์คํ์ผ์ด ํจ๊ณผ์ ์ด๊ณ ์ ์ง ๊ด๋ฆฌ ๊ฐ๋ฅํ๋ฉฐ ์ ์ธ๊ณ ์ฌ์ฉ์๊ฐ ์ก์ธ์คํ ์ ์๋์ง ํ์ธํ ์ ์์ต๋๋ค. ์น ๊ฐ๋ฐ์ด ๊ณ์ ๋ฐ์ ํจ์ ๋ฐ๋ผ ๊ตญ์ ํ๋ฅผ ์ํด CSS ์นด์ดํฐ ์คํ์ผ์ ์ดํดํ๊ณ ํ์ฉํ๋ ๊ฒ์ ์ง์ ์ผ๋ก ํฌ๊ด์ ์ด๊ณ ์ฌ์ฉ์ ์นํ์ ์ธ ์น ๊ฒฝํ์ ๋ง๋๋ ๋ฐ ์ ์ ๋ ์ค์ํด์ง ๊ฒ์
๋๋ค. CSS ์นด์ดํฐ ์คํ์ผ์ ํ์ ๋ฐ์๋ค์ด๊ณ ์ ์ธ๊ณ ๋ชจ๋ ๊ณณ์ ์ฌ์ฉ์์ ๊ณต๊ฐํ๋ ์น์ฌ์ดํธ๋ฅผ ๋ง๋์ญ์์ค.